<?php

/**
 * DatacenterController
 * 
 * @package Sgit 
 * @author Juan Manuel Martinez Carrillo
 * @copyright Juan Manuel Martinez Carrillo
 * @version 2012
 * @access public
 */



/**
 * 
 * Pra cambiar a las nuevas imputaciones cambiar 
 * 
 * getImputaciones por getImputaciones2 tanto en index  como en propuestas
 * 
 * y en metodo aceptacionAction
 * 
 * cambiar case 1 por el comentado
 */

class ComiteCambiosController extends Sgit_Controller_Action
{


    protected $_main_model = 'ControlCambios';
    protected $_main_form = 'ControlCambios';    


    function _begin(){
        $this->_file_upload[1] = Sgit_Util_FileUpload::run('propuesta','file');
    }


    public function propuestasAction()
    {
        
        $cambio_aceptado=$this->_getParam('cambio_aceptado');
        $tipo=$this->_getParam('tipo');
        $fecha_peticion_cambio=$this->_getParam('fecha_peticion_cambio');
        
        
        $filtros = new Sgit_Form_Filtros();
        
        $f_sino = new Zend_Form_Element_Select('cambio_aceptado');
        $f_sino->setMultiOptions(array(''=>'Sin decidir','SI'=>'Aprobada','NO'=>'Rechazada'));
        $f_sino->setLabel('Estado de la petición');
        $f_sino->setValue($cambio_aceptado);
        $filtros->addFormSelect($f_sino);
        
        $f_fecha = new Zend_Form_Element_Text('fecha_peticion_cambio');
        $f_fecha->setLabel('Fecha Petición');
        $filtros->addFormSelect($f_fecha);
        
        
        
        
        $values = $this->_getFiltrosValues($filtros);
        $filtros->myRender();

        $propone=$this->_auth->getIdentity()->id;

        
            $propuestas = $this->misPropuestas($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$propuestas);
        
            $imputaciones=$this->getImputaciones2($cambio_aceptado,$fecha_peticion_cambio,$propone);
            $rows = array_merge ((array)$rows,(array)$imputaciones);  
        
            $imputaciones=$this->getImputacionesMmr($cambio_aceptado,$fecha_peticion_cambio,$propone);
            $rows = array_merge ((array)$rows,(array)$imputaciones);  
    
            $post = $this->getProyectosDCPost($cambio_aceptado,$fecha_peticion_cambio,$propone);
            $rows = array_merge((array)$rows,(array)$post); 
    
   
            $proyectos = $this->getProyectosDC($cambio_aceptado,$fecha_peticion_cambio,$propone);
            $rows = array_merge((array)$rows,(array)$proyectos);
       
            $cuentas= $this->getEconomico($cambio_aceptado,$fecha_peticion_cambio,$propone);
            $rows = array_merge((array)$rows,(array)$cuentas);
        
            $this->view->rows= Sgit_Util_OrderArray::run($rows, 'fecha',true);


    }


    public function indexAction()
    {
        
        $cambio_aceptado=$this->_getParam('cambio_aceptado');
        $fecha_peticion_cambio=$this->_getParam('fecha_peticion_cambio');
        
        
        $tipo= $this->_getParam('tipo');

        if($tipo){
           $tipo=array_values($tipo);
        }else{
           $tipo=array(1,2,4,5);
        }
        

        
        
        $filtros = new Sgit_Form_Filtros();
        $f_sino = new Zend_Form_Element_Select('cambio_aceptado');
        $f_sino->setMultiOptions(array(''=>'Sin decidir','SI'=>'Aprobada','NO'=>'Rechazada'));
        $f_sino->setLabel('Estado de la petición');
        $f_sino->setValue($cambio_aceptado);
        $filtros->addFormSelect($f_sino);
                
        
        $f_fecha = new Zend_Form_Element_Text('fecha_peticion_cambio');
        $f_fecha->setLabel('Fecha Petición');
        $filtros->addFormSelect($f_fecha);
        
        
        $f_tipo = new Sgit_Form_Element_MultiCheckbox_Zonas('tipo');
        $f_tipo->setMultiOptions(array(1=>'Imputación/Facturación',2=>'Proyectos DC',4=>'Propuestas',5=>'Intervenciones',3=>'Control Economico'));
        $f_tipo->setValue($tipo);
        $f_tipo->setLabel('Tipo de petición');
        $filtros->addFormSelect($f_tipo);
        

        $values = $this->_getFiltrosValues($filtros);
        $filtros->myRender();


        $rows=array();



        if(in_array(5,$tipo)) 
        {
            $intervenciones=$this->getIntervenciones($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$intervenciones);
        }
        

        if(in_array(1,$tipo)) 
        {
            $imputaciones=$this->getImputaciones2($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge ((array)$rows,(array)$imputaciones);  
            
            $imputaciones=$this->getImputacionesMmr($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge ((array)$rows,(array)$imputaciones);  
        }



        if(in_array(2,$tipo)) 
        {
            $post = $this->getProyectosDCPost($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$post); 
    
            $proyectos = $this->getProyectosDC($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$proyectos);
        }
       
        if(in_array(3,$tipo)) 
        {
            $cuentas= $this->getEconomico($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$cuentas);
        }
        
        if(in_array(4,$tipo)) 
        {
            $propuestas=$this->getPropuestas($cambio_aceptado,$fecha_peticion_cambio);
            $rows = array_merge((array)$rows,(array)$propuestas);
        }
        
        
  
        $this->view->rows=$rows;// Sgit_Util_OrderArray::run($rows, 'codigo');
       
 
    }




    //codigo 1
    public function getImputaciones2($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        
        $imputacion = new Application_Model_InformeElectricidadMensualDatacenter();
   	    $rows1 = $imputacion->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        
        
        
        
        
        $k=0;
        foreach($rows1 as $v)
        {
            
            $imput[0]=$imputacion->getImputacion($v['id']);
            $imput[1]=$imputacion->getImputacion($imput[0]['previous_id']);
            $imput[2]=$imputacion->getImputacion($imput[1]['previous_id']);
            $imput[3]=$imputacion->getImputacion($imput[2]['previous_id']);
            $imput[4]=$imputacion->getImputacion($imput[3]['previous_id']);
            $imput[5]=$imputacion->getImputacion($imput[4]['previous_id']);
            $imput[6]=$imputacion->getImputacion($imput[5]['previous_id']);
            $imput[7]=$imputacion->getImputacion($imput[6]['previous_id']);
            $imput[8]=$imputacion->getImputacion($imput[7]['previous_id']);
            $imput[9]=$imputacion->getImputacion($imput[8]['previous_id']);
            $imput[10]=$imputacion->getImputacion($imput[9]['previous_id']);
            $imput[11]=$imputacion->getImputacion($imput[10]['previous_id']);
            $imput[12]=$imputacion->getImputacion($imput[11]['previous_id']);
            

            $rows[$k]['id_zona']=$v['id_zona'];
            $rows[$k]['origen']='Imputación/Facturación Electricidad';
	    	$rows[$k]['area']='Explotación';
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=1;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['propuesta']='Aprobación Imputación/Facturación Electricidad: '.Sgit_Util_Meses::run($v['mes']) .' '.$v['anio'].' '.Sgit_Cache::single()->model('Datacenter')->getKey($v['id_zona']);
            $rows[$k]['fecha']=empty($v['fecha_peticion_cambio']) ? $v['created_on'] :$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['created_by'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['link']='<a target="_blank" class="ira" href="/informes-electricidad/resumen/idZona/'.$v['id_zona'].'"> Ir al Resumen </a>';
            
            
            $notas ="<div style='font-size:1.5em' >Imputación de ".Sgit_Filter_DateDbToLocalize::filter($imput[0]['fecha_imputacion'],'MMMM - YYYY')."</div>";
            $notas .="<div style='font-size:1.5em' >Incremento Potencia: {$imput[0]['incremento']}%</div>";
            
            
            $notas.="<table style='font-size:1em;width:90%;margin:0 auto'>";
                $notas.="<tr class='ui-state-active'>";
                $notas.="<td width='8%'>Fecha</td>";
                $notas.="<td>Consumo total kWh</td>";
                $notas.="<td>Consumo IT kWh</td>";
                $notas.="<td>Potencia Total kW</td>";
                $notas.="<td>Potencia IT kW</td>";
                $notas.="<td>% Incremento Potencia</td>";
                $notas.="<td>PUE &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>";
                $notas.="<td>Coste Electricidad €</td>";
                $notas.="<td>Imputación €</td>";
                $notas.="<td>Facturación €</td>";
                $notas.="<td>Margen Bruto/Venta %</td>";
                $notas.="</tr>";
            foreach($imput as $v){
                $notas.="<tr class='ui-state-focus'>";
                $notas.="<td>".Sgit_Filter_DateDbToLocalize::filter($v['fecha_imputacion'],'MMM - YYYY')."</td>";
                $notas.="<td>".$this->view->numES($v['consumo_datacenter'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['consumo_it'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['potencia_total'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['potencia_it'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['incremento'],2)."</td>";
                $notas.="<td>".$this->view->numES($v['pue'],2)."</td>";
                $notas.="<td>".$this->view->numES($v['coste'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['imputacion'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['facturacion'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['ratio_reventa'],2)."</td>";
                $notas.="</tr>";
            }
            $notas.="</table>";
            
            
            
            $rows[$k]['notas2']=$notas;
            $k++;
	    }
        
 
        return $rows;
    }
    
    
    

    //codigo 1
    public function getImputaciones($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        
        $imputacion = new Application_Model_ImputacionElectricidad();
   	    $rows1 = $imputacion->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        
        
        
        
        
        $k=0;
        foreach($rows1 as $v){
            
            $imput[0]=$imputacion->getImputacion($v['id']);
            $imput[1]=$imputacion->getImputacion($imput[0]['previous_id']);
            $imput[2]=$imputacion->getImputacion($imput[1]['previous_id']);
            $imput[3]=$imputacion->getImputacion($imput[2]['previous_id']);
            
            $imput[4]=$imputacion->getImputacion($imput[3]['previous_id']);
            $imput[5]=$imputacion->getImputacion($imput[4]['previous_id']);
            $imput[6]=$imputacion->getImputacion($imput[5]['previous_id']);
            $imput[7]=$imputacion->getImputacion($imput[6]['previous_id']);
            $imput[8]=$imputacion->getImputacion($imput[7]['previous_id']);
            $imput[9]=$imputacion->getImputacion($imput[8]['previous_id']);
            $imput[10]=$imputacion->getImputacion($imput[9]['previous_id']);
            $imput[11]=$imputacion->getImputacion($imput[10]['previous_id']);
            $imput[12]=$imputacion->getImputacion($imput[11]['previous_id']);
            

            $rows[$k]['id_zona']=$v['id_zona'];
            $rows[$k]['origen']='Imputación/Facturación Electricidad';
	    	$rows[$k]['area']='Explotación';
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=1;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['propuesta']='Aprobación Imputación/Facturación Electricidad: '.Sgit_Util_Meses::run($v['mes']) .' '.$v['anio'].' '.Sgit_Cache::single()->model('Datacenter')->getKey($v['id_zona']);
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['usuario_factura'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['link']='<a target="_blank" class="ira" href="/electricidad/resumen/idZona/'.$v['id_zona'].'"> Ir al Resumen </a>';
            
            
            $notas ="<div style='font-size:1.5em' >Imputación de ".Sgit_Filter_DateDbToLocalize::filter($imput[0]['fecha_imputacion'],'MMMM - YYYY')."</div>";
            $notas .="<div style='font-size:1.5em' >Incremento Potencia: {$imput[0]['incremento']}%</div>";


            $notas.="<table style='font-size:1em;width:90%;margin:0 auto'>";
                $notas.="<tr class='ui-state-active'>";
                $notas.="<td width='8%'>Fecha</td>";
                $notas.="<td>Consumo total kWh</td>";
                $notas.="<td>Consumo IT kWh</td>";
                $notas.="<td>Potencia Total kW</td>";
                $notas.="<td>Potencia IT kW</td>";
                $notas.="<td>% Incremento Potencia</td>";
                $notas.="<td>PUE &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>";
                $notas.="<td>Coste Electricidad €</td>";
                $notas.="<td>Imputación €</td>";
                $notas.="<td>Facturación €</td>";
                $notas.="<td>Margen Bruto/Venta %</td>";
                $notas.="</tr>";
            foreach($imput as $v){
                $notas.="<tr class='ui-state-focus'>";
                $notas.="<td>".Sgit_Filter_DateDbToLocalize::filter($v['fecha_imputacion'],'MMM - YYYY')."</td>";
                $notas.="<td>".$this->view->numES($v['consumo_total'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['consumo_it'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['potencia_total'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['potencia_it'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['incremento'],2)."</td>";
                $notas.="<td>".$this->view->numES($v['pue'],2)."</td>";
                $notas.="<td>".$this->view->numES($v['coste'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['imputacion'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['facturacion'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['ratio_reventa'],2)."</td>";
                $notas.="</tr>";
            }
            $notas.="</table>";
            
            
            
            $rows[$k]['notas2']=$notas;
            $k++;
	    }
        
        return $rows;
    }

    //codigo 5
    public function getImputacionesMMR($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        

        $imputacion = new Application_Model_ImputacionMmr();
   	    $rows1 = $imputacion->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        
        

        
        $k=0;
        foreach($rows1 as $v){
           
           
            $imput[0]=$imputacion->getImputacion($v['id']);
            $imput[1]=$imputacion->getImputacion($imput[0]['previous_id']);
            $imput[2]=$imputacion->getImputacion($imput[1]['previous_id']);
            $imput[3]=$imputacion->getImputacion($imput[2]['previous_id']);
            $imput[4]=$imputacion->getImputacion($imput[3]['previous_id']);
            $imput[5]=$imputacion->getImputacion($imput[4]['previous_id']);
            $imput[6]=$imputacion->getImputacion($imput[5]['previous_id']);
            $imput[7]=$imputacion->getImputacion($imput[6]['previous_id']);
            $imput[8]=$imputacion->getImputacion($imput[7]['previous_id']);
            $imput[9]=$imputacion->getImputacion($imput[8]['previous_id']);
            $imput[10]=$imputacion->getImputacion($imput[9]['previous_id']);
            $imput[11]=$imputacion->getImputacion($imput[10]['previous_id']);
            

            $rows[$k]['id_zona']=$v['id_zona'];
            $rows[$k]['origen']='Imputación MMR '.Sgit_Filter_DateDbToLocalize::filter($imput[0]['fecha_imputacion'],'MMMM - YYYY');
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
	    	$rows[$k]['area']='MMR';
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=5;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['propuesta']='Aprobación Imputación MMR: '.Sgit_Util_Meses::run($v['mes']) .' '.$v['anio'].' '.Sgit_Cache::single()->model('Datacenter')->getKey($v['id_zona']);
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['propone_cambio'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['link']='<a class="ira" target="_blank" href="index.php?modulo=Servicios_Resumen&idZona='.$v['id_zona'].'"> Ir al Resumen</a>';
            
          
            $notas ="<div style='font-size:1.5em' >Imputación de ".Sgit_Filter_DateDbToLocalize::filter($imput[0]['fecha_imputacion'],'MMMM - YYYY')."</div>";
   
            $notas.="<table style='font-size:1em;width:90%;margin:0 auto'>";
                $notas.="<tr class='ui-state-active'>";
                $notas.="<td width='8%'>Fecha</td>";
                $notas.="<td>Altas Recurrentes</td>";
                $notas.="<td>Facturación €</td>";
                $notas.="<td>Imputación €</td>";
                $notas.="<td>Coste €</td>";
                $notas.="<td>Ratio Facturación / Imputación</td>";
                $notas.="<td>Ratio Facturación / Coste</td>";
                $notas.="</tr>";
            foreach($imput as $v){
                $notas.="<tr class='ui-state-focus'>";
                $notas.="<td>".Sgit_Filter_DateDbToLocalize::filter($v['fecha_imputacion'],'MMM - YYYY')."</td>";
                $notas.="<td>".$this->view->numES($v['c'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['venta'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['coste'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['coste_real'],0)."</td>";
                $notas.="<td>".$this->view->numES($v['venta_coste'],2)."</td>";
                $notas.="<td>".$this->view->numES($v['venta_coste_real'],2)."</td>";
                $notas.="</tr>";
            }
            $notas.="</table>";
            
            
            
            $rows[$k]['notas2']=$notas;
            $k++;
	    }
        
        return $rows;
    }
    
    
    
    
    
    //codigo 2
    public function getProyectosDC($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        $pro = new Application_Model_ProyectosDC();
        
        $this->_element->DCDepartamentos =          new Sgit_Form_Element_Select_Xml('DCDepartamentos');
        
        
   	    $rows1 = $pro->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);

        $k=0;
        foreach($rows1 as $v){
            
            $rows[$k]['id_zona']=$v['id_zona'];
            $rows[$k]['origen']='Nuevo Proyecto DC';
	    	$rows[$k]['area']=$this->_element->DCDepartamentos->getMultiOption($v['id_departamento']);
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=2;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['notas']=$v['proyecto'].$v['notas'];
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['jefe1'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['link']="";//Utiles::editar($v['id'],'GestionProyectos');
            $k++;
	    }
   
        return $rows;
       
    }



    public function getProyectosDCPost($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        $post = new Application_Model_ProyectosDCPost();
        $pro = new Application_Model_ProyectosDC();
   	    
        $rows1 = $post->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        
        $this->_element->DCDepartamentos =          new Sgit_Form_Element_Select_Xml('DCDepartamentos');
        $this->_element->ProyetosDCSubCategorias =  new Sgit_Form_Element_Select_ProyetosDCSubCategorias('id_sub_cat');
        $this->_element->ProyetosDCCategorias =     new Sgit_Form_Element_Select_ProyetosDCCategorias('id_cat');
            

        $k=0;
        foreach($rows1 as $v){
            $proyecto= $pro->getRow($v['id_proyecto']);
            $rows[$k]['id_zona']=$proyecto['id_zona'];
            $rows[$k]['origen']='Proyecto DC: '.$proyecto['proyecto'];
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=3;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['propuesta']='<b>'.$proyecto['proyecto'].'</b><br>';
            $rows[$k]['notas']=$v['notas'];
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['id_usuario'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];

            
            $rows[$k]['otros']=$this->_element->DCDepartamentos->getMultiOption($v['id_departamento']);
            $rows[$k]['otros'].=" - ".$this->_element->ProyetosDCCategorias->getMultiOption($v['id_cat']);
            $rows[$k]['otros'].=" - ".$this->_element->ProyetosDCSubCategorias->getMultiOption($v['id_sub_cat']);
            
       

       
       
            $rows[$k]['link']='<a class="ira" target="_blank" href="/proyectosdc-post/index/id_proyecto/'.$v['id_proyecto'].'"> Ir al Proyecto</a>';
           
            $rows[$k]['files']=$this->view->showPhotos('gestion_tareas',$v['id_proyecto'],$v['id']);
            
            
           
           
            $k++;
	    }
        
        
        return $rows;


    }
    
    public function getEconomico($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        
        $cuentas = new Application_Model_CuentasEstados();
        
        $rows1=$cuentas ->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        
        
            

        foreach($rows1 as $v){
            $fecha=new Zend_Date();
            $fecha->setDay(1)->setMonth($v['mes'])->setYear($v['anio']);
   

            $rows[$k]['origen']='Control Economico '.$v['tipo'].' '.$fecha->toString('MMMM - YYYY');
	    	$rows[$k]['otros']=$v['tipo'];
            $rows[$k]['id']=$v['id'];
            $rows[$k]['id_zona']=$v['id_zona'];
            $rows[$k]['codigo']=8;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['notas']='Aprobación Seguimiento Economico '.$v['tipo'] .' '.$fecha->toString('MMMM - YYYY');
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['propone_cambio'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['link']='<a class="ira" target="_blank" href="/cuentas-'.strtolower($v['tipo']).'/index/idZona/'.$v['id_zona'].'/anio/'.$fecha->toString('YYYY').'"> Ver Seguimiento</a>';
            $k++;
	    }  

       
        
        return $rows;
    }
     

    public function getPropuestas($cambio_aceptado,$fecha_peticion_cambio){
      
       
        $cc = new Application_Model_ControlCambios();
        
        
        $rows1=$cc ->getComite($cambio_aceptado,$fecha_peticion_cambio);
        
        
        $this->_element->DCDepartamentos =          new Sgit_Form_Element_Select_Xml('DCDepartamentos');
       
    
        foreach($rows1 as $v){

            $rows[$k]['origen']='Propuesta';
            $rows[$k]['id_zona']=$v['id_zona'];
	    	$rows[$k]['area']=$v['id_departamento'];
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=7;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['notas']=$v['propuesta'];
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['propone_cambio'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['otros']=$this->_element->DCDepartamentos->getMultiOption($v['id_departamento']);
     
            
            $rows[$k]['files']=$this->view->showPhotos('propuesta','file',$v['id']);
           

            $k++;
	    }  
        return $rows;
         
    }


    //codigo 6
    public function getIntervenciones($cambio_aceptado,$fecha_peticion_cambio,$propone=null)
    {
        $intervenciones = new Application_Model_Intervenciones();
   	    $c = $intervenciones->getComite($cambio_aceptado,$fecha_peticion_cambio,$propone);
        

        
        $k=0;
        //if($c)
        //{
            $rows[$k]['origen']="$c Intervenciones pendientes";
	    	$rows[$k]['area']='Todas';
            $rows[$k]['codigo']=6;
            $rows[$k]['notas']="Hay $c intervenciones progamadas pendientes de aprobar.";
            $rows[$k]['notas']='<iframe id="frame_intervenciones" src="/intervenciones/comite" width="100%" height="500px"></iframe>';
            $rows[$k]['fecha']=date('Y-m-d');
            $rows[$k]['usuario']='N/A';
            $rows[$k]['responde']='N/A';
            $rows[$k]['link']='<a class="button_ira intervenciones" target="_blank" href="#"> Ocultar Intervenciones</a>';
            
            
            return $rows;
        //}
    }






    public function insertarAction()
    {
        $this->_reload(true);
    	$this->_insertar();
    }
    
    
    public function editarAction()
    {
        $this->_reload(true);
    	$this->_editar();
    }



    public function borrarAction()
    {
        $id = $this->_getParam('id');
        $n = $this->_model->default->delete(array('id = ?'=>$id));
        $this->postDispatch();
        
        if($this->_file_upload){
            foreach($this->_file_upload as $filepload){
                Sgit_Util_removeFiles::run($filepload['tabla'],$filepload['key'],$id,'delete');
            }
        }
       
        $json['status'] ='reload';
        $this->_helper->json($json);
    }




    protected function _prepareValuesToDb()
    {
        
        $row=$this->_form->getValues();
        
        $row['objeto_cambio']=1;
        $row['fecha_peticion_cambio']=new Zend_Db_Expr('CURDATE()');
        $row['propone_cambio']=$this->_auth->getIdentity()->id;

        Sgit_Util_removeFiles::run($this->_file_upload[1]['tabla'],$this->_file_upload[1]['key'],$this->_id,$row[$this->_file_upload[1]['activo']]);
        unset($row[$this->_file_upload[1]['name']]);
        unset($row[$this->_file_upload[1]['activo']]);
        
        
        return $row;
    }
    
    public function aceptacionAction()
    {

        $notas=$this->_getParam('notas');
        $id=$this->_getParam('id');
        

        $a = explode('-',$id);
        $codigo=$a[0];
        $id=$a[1];
        $estado=$a[2];
        
        
      
        
        switch($codigo)
        {
           /*
            case 1:
                $change = new Application_Model_ImputacionElectricidad();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
           */
               
            case 1:
                $change = new Application_Model_InformeElectricidadMensualDatacenter();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;  
                
            case 2:
                $change = new Application_Model_ProyectosDC();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
            case 3:
                $change = new Application_Model_ProyectosDCPost();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
            case 5:
                $change = new Application_Model_ImputacionMmr();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;    
            case 6:
                $change = new Application_Model_Intervenciones();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
            case 7:
                $change = new Application_Model_ControlCambios();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
            case 8:
                $change = new Application_Model_CuentasEstados();
   	            $status = $change->changeComite($id,$estado,$notas);
                break;
        }
        
        $this->_helper->json($status);
    }
    
    
    
    public function misPropuestas($cambio_aceptado,$fecha_peticion_cambio)
    {
      
 

        $where['propone_cambio = ?']=$this->_auth->getIdentity()->id;
        
        if($cambio_aceptado=='SI') 
            $where['cambio_aceptado = ?']='SI';
        elseif($cambio_aceptado=='NO') 
            $where['cambio_aceptado = ?']='NO';
        else $where['cambio_aceptado IS NULL']='';
        

        
        
        $rows1 = $this->_model->default->getAll($where);
        

        $this->_element->DCDepartamentos =          new Sgit_Form_Element_Select_Xml('DCDepartamentos');
       
    
        foreach($rows1 as $v){

            $rows[$k]['origen']='Propuesta';
            $rows[$k]['id_zona']=$v['id_zona'];
	    	$rows[$k]['area']=$v['id_departamento'];
            $rows[$k]['id']=$v['id'];
            $rows[$k]['codigo']=7;
            $rows[$k]['cambio_aceptado']=$v['cambio_aceptado'];
            $rows[$k]['notas']=$v['propuesta'];
            $rows[$k]['fecha']=$v['fecha_peticion_cambio'];
            $rows[$k]['usuario']=$v['propone_cambio'];
            $rows[$k]['responde']=$v['responde_cambio'];
            $rows[$k]['notas_cambio']=$v['notas_cambio'];
            $rows[$k]['otros']=$this->_element->DCDepartamentos->getMultiOption($v['id_departamento']);
     
            
            $rows[$k]['files']=$this->view->showPhotos('propuesta','file',$v['id']);
           

            $k++;
	    }  
        return $rows;
         
    }
    

}



